gusucode.com > 现代通信系统——使用MATLAB(+全部程序) > 现代通信系统——使用MATLAB(+全部程序)/现代通信系统——使用MATLAB(+全部程序)/Matlab 程序/Chapter2/Variance.m
function v=variance(funfcn,a,b,tol,p1,p2,p3) % EXPECTED Finds the variance of a random variable % with probability density function 'funfcn' and % support [a,b]. % Y=VARIANCE('F',A,B,TOL,P1,P2,P3), finds the variance % of the density function F defined in an m-file. The % function can contain up to three parameters,P1,P2,P3. % tol=the relative error. args=[]; for n=1:nargin-4 args=[args,',p',int2str(n)]; end args=[args,')']; funfcn1=['x.*',funfcn]; e=eval(['quad(funfcn1,a,b,tol,[]',args]); newfun=['(x-(',num2str(e),')).^2.*',funfcn]; v=eval(['quad(newfun,a,b,tol,[]',args]);